/*
Usar los eventos ONFOCUS y ONBLUR para validar
Usar estilos para darle forma a los mensajes de error.
 */

function validateLogin() {
	var userNameRegex = /\W/;
	var userName = document.getElementById("userName");
	var errorLayer = document.getElementById("errorLoginMessage");
echo("dentro de validate login");
	if (userName.value.length < 4 || userName.value.length > 8) {
		echo("dentro de if 1");
		changeClassName("errorLoginMessage", "error errorMessage");
		userName.className = "error";
		errorLayer.innerHTML = "Debe escribir un nombre de usuario mayor de 8 letras y menor de 12.";
		return false;
	}

	if (userNameRegex.test(userName.value)) {
		echo("dentro de if 2");
		changeClassName("errorLoginMessage", "error errorMessage");
		userName.className = "error";
		errorLayer.innerHTML = "S&oacute;lo se permiten letras, n&uacute;meros y guiones bajos.";
		return false;
	}
}

function validateRegister()
{
	return userNameValidation();
}

function userNameValidation() {
	alert("paso por validar nombre");
	
	var nameControl = document.getElementById("alias");
	if (nameControl) {
		var value = nameControl.value;
		alert(value); // quitar
		
		if (!value || value.length > 8 || value.length < 4 ) {
			var error = document.getElementById("aliasError");
			error.className = "error";
			error.innerHTML = "El nombre del usuario debe ser mayor de 4 y menor de 8 caracteres";
			return false;
		}
		
		// AJAX para acceso
		var postParams = "userName="+value+"&op=validateUserName";   // clave=valor  &->paso varios parametros
		var xmlhttp;
		if (window.XMLHttpRequest) 
		{
			xmlhttp = new XMLHttpRequest();
		} else 
		{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
		xmlhttp.open("POST", "Services/UserService.php", true);
		
		//Send the proper header information along with the request
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", postParams.length);
		xmlhttp.setRequestHeader("Connection", "close");

		xmlhttp.onreadystatechange = function() {//Call a function when the state changes.
			if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
				if(xmlhttp.responseText < 1)
					{
					//alert("hola tres");
					document.getElementById("userRegister").submit();
					}
				else
				{
					var error = document.getElementById("aliasError");
					error.className = "error";
					error.innerHTML = "El usuario seleccionado ya existe en la base de datos.";
					return false;
				}	
			}
		}
		
		xmlhttp.send(postParams);
		return false;
		
	} else {
		var error = document.getElementById("aliasError");
		error.className = "error";
		error.innerHTML = "El nombre del usuario no debe ser vacio.";
		return false;
	}
}

function lastNameValidation() {
	alert("paso por validar apellido");
	var nameControl = document.getElementById("userLastName");
	if (nameControl) {
		var value = nameControl.value;
		alert(value); // quitar
		if (!value || value.length < 10) {
			return "- El apellido del usuario debe ser mayor de 20 caracteres.\r\n";
		}
	} else {
		return "- El apelllido del usuario no debe ser vacio.\r\n";
	}
}

function showRegisterWindow() {
	showBlockLayer();
	changeClassName("register", "register");
}

function hideRegisterWindow() {
	hideBlockLayer();
	changeClassName("register", "hidden");
}

function showBlockLayer() {
	changeClassName("blockLayer", "blockLayer");
}

function hideBlockLayer() {
	changeClassName("blockLayer", "hidden");
}

function changeClassName(objectId, newClassName) {
	if (newClassName) {
		var object = document.getElementById(objectId);
		if (object) {
			object.className = newClassName;
		}
	}
}
